.. _cmcPmStGetPosition: cmcPmStGetPosition ================================ -------------------------------- SYNOPSYS ````````````` .. code-block:: none VT_I4 cmcPmStGetPosition ([in] VT_I4 BoardID, [in] VT_I4 NodeId, [in] VT_I4 Channel, [in] VT_I4 Source, [out] VT_PR8 Position ) DESCRIPTION ````````````` - cmcPmStGetPosition()함수는 지정한 축의 지정한 카운터의 값을 읽어서 반환합니다. 단, 이때 반환되는 값의 단위는 “Unit distance” 에 의해 정의되는 논리적 거리입니다. \ - 이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cmc 가 붙지 않습니다. PARAMETER ````````````` ▶ BoardID : 사용자가 설정한 디바이스(보드) ID. ▶ NodeId : 노드 번호. 노드 번호는 3부터 시작합니다. ▶ Channel : 축 번호. 통합 축으로 관리되는 축 번호를 의미하며, 상수 값으로 0 (Zero Based) 이상, 최대 통합 축 개수 - 1 이하의 값을 축 번호로 설정할 수 있습니다. ▶ Target : 설정할 카운터 번호. cmcPmStSetCount() 함수의 인자이며, 다음의 4가지 값 중의 하나이어야 합니다. .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0(cmcCNT_COMM), Command Counter 1(cmcCNT_FEED), Feedback Counter 2(cmcCNT_DEV), Deviation Counter: Command 와 Feedback counter의 편차 카운터 3(cmcCNT_GEN), General Counter: 사용자의 정의에 따라 여러 가지 용도로 사용될 수 있는 카운터 ▶ Source : 대상 카운터 번호. cmcPmStGetCount() 함수의 인자이며, 이 값은 다음의 4 가지 값 중의 하나이어야 합니다. .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 0(cmcCNT_COMM), Command Counter 1(cmcCNT_FEED), Feedback Counter 2(cmcCNT_DEV), Deviation Counter 3(cmcCNT_GEN), General Counter ▶ Position : 대상 카운터에 설정 혹은 반환될 값. 단, 이 값은 논리적 단위 거리 입니다. RETURN VALUE ````````````` .. csv-table:: :widths: 10 90 :header-rows: 1 :stub-columns: 0 Value, Meaning 음수, 수행 실패 ERR_NONE, 수행 성공 REFERENCE ````````````` - 논리적 단위 거리는 cmcPmCfgSetUnitDist() 함수에 의해 결정됩니다. EXAMPLE ``````````````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include “ComiMLink3_SDK.h” #include “ComiMLink3_SDK_Def.h” long BoardID = 0; //0번 축의 Command Position을 0으로 설정합니다. cmcPmStSetPosition(BoardID, 3, ccmcX1, cmcCNT_COMM, 0 ); //0번 축의 Feedback Position을 0으로 설정합니다. cmcPmStSetPosition(BoardID, 3, ccmcX1, cmcCNT_FEED, 0 ); long nCmdPosition = 0; long nFdbPosition = 0; //0번 축의 Command Position값을 반환합니다. cmcPmStGetPosition(BoardID, 3, ccmcX1, cmcCNT_COMM, &nCmdPosition ); //0번 축의 Feedback Position값을 반환합니다. cmcPmStGetPosition(BoardID, 3, ccmcX1, cmcCNT_FEED, &nFdbPosition ); SEE ALSO ``````````` .. seealso:: :ref:`cmcPmStSetCount`, :ref:`cmcPmStGetCount`